<HTML>
<HEAD>
  <!-- Created with AOLpress/2.0 -->
  <!-- AP: Created on: 26-Oct-2005 -->
  <!-- AP: Last modified: 14-Sep-2009 -->
  <TITLE>FontForge install procedures for cygwin (MS/Windows)</TITLE>
  <LINK REL="icon" href="fftype16.png">
  <LINK REL="stylesheet" TYPE="text/css" HREF="FontForge.css">
</HEAD>
<BODY>
<DIV id="in">
  <H1 ALIGN=Center>
    FontForge install procedures<BR>
    <SMALL>for cygwin under MS Windows</SMALL>
  </H1>
  <P>
  <STRONG><FONT color="red">I no longer provide pre-built packages. You may
  either compile from source or download a package from another site (cygwin
  has a fontforge package).</FONT></STRONG>
  <UL>
    <!--
    <LI>
    <A HREF="#Installing">Installing from a pre-built cygwin package</A>
    <UL>
    <LI>
    <A HREF="#Before">Before you install</A>
    <LI>
    <A HREF="ms-install.html#Alternatives">Alternatives to cygwin</A>
    <LI>
    <A HREF="#Obtaining">Obtaining one of my pre-built packages</A>
    <LI>
    <A HREF="#install">Installing</A>
    <LI>
    <A HREF="#Notes">Notes</A>
    </UL>
    -->
    <LI>
      <A HREF="nix-install.html">Installing on a unix/linux system</A>
    <LI>
      <A HREF="mac-install.html">Installing on a mac</A>
    <LI>
      <A HREF="vms-install.html">Installing on VMS</A>
    <LI>
      <A HREF="source-build.html#MS">Building and installing from source</A>
    <LI>
      <A HREF="source-build.html#Dependencies">Dependencies (external libraries/helper
      programs)</A>
    <LI>
      <A HREF="source-build.html#Documentation">Installing documentation</A>
    <LI>
      <A HREF="running.html#cygwin">Running FontForge</A>
    <LI>
      <A HREF="running.html#cygwin-troubles">Troubleshooting</A>
    <LI>
      <A HREF="uninstall.html">Uninstalling</A>
  </UL>
  <H2>
    <A NAME="Installing">Installing</A> from a pre-built cygwin package
  </H2>
  <H3>
    <A NAME="Before">Before</A> you install
  </H3>
  <P>
  You must insure that you have <A HREF="http://www.cygwin.com/">cygwin</A>
  installed on your system. Cygwin is free. (cygwin makes MS Windows look enough
  like unix to allow fontforge to run there). Getting all the bits of cygwin
  seems to be the hardest part of installing fontforge -- probably because
  it is the least expected part.
  <UL>
    <LI>
      First download the setup.exe program from
      <A TARGET="_top" HREF="http://www.cygwin.com/">http://www.cygwin.com/</A>
    <LI>
      Run it. It will ask you what components of cygwin you wish to install
    <LI>
      You will need the default stuff, plus the X window system, binutils, libpng,
      libjpeg, and libxml2.
      <P>
      Most of what you need you get by default. But you must explicitly request
      X11 and the libraries.
    <LI>
      Once you have cygwin installed, start it. This should give you a terminal
      window running bash (a unix shell)
  </UL>
  <H3>
    <A NAME="Alternatives">Alternatives</A> to cygwin.
  </H3>
  <P>
  There are now alternatives to cygwin.
  <P>
  Someone has ported fontforge to mingw, which is much simpler to download
  than cygwin:
  <UL>
    <LI>
      <A HREF="http://www.geocities.jp/meir000/fontforge/">fontforge-mingw</A>
  </UL>
  <P>
  Instead of downloading cygwin you can install one of the virtual machines
  (or something similar) which run linux, and then install fontforge from a
  linux package.
  <UL>
    <LI>
      <A HREF="http://www.andlinux.org/">andLinux</A>
  </UL>
  <H3>
    <A NAME="Obtaining">Obtaining</A> one of my pre-built packages
  </H3>
  <P>
  I used post a cygwin install package on
  <A HREF="http://sourceforge.net/projects/fontforge/files/fontforge-executables/">sourceforge's
  file release system</A>. <STRONG>Old versions are still there, but they are
  out of date now.</STRONG> There's a certain amount of pother involved in
  using the file release system, but you get the file eventually.
  <UL>
    <LI>
      If you follow the
      <A HREF="http://sourceforge.net/projects/fontforge/files/fontforge-executables/">link
      above </A>you will end up on a page showing many releases of FontForge for
      many systems<BR>
      in most cases you will want the most recent release.
    <LI>
      Then click on the executable package you want to download:
      <UL>
	<LI>
	  The cygwin release will be called something like
	  "fontforge_cygwin-200xxxxx.tar.bz2
      </UL>
    <LI>
      Then you have the joy of choosing a mirror site (pick one that's on the same
      continent you are) and click on the little icon in the download column
    <LI>
      Then you wait. After a bit you get another copy of this same page. After
      an even longer time your browser notices that you've started a download.
  </UL>
  <H3>
    <A NAME="install">Installing</A>
  </H3>
  <P>
  I have no idea where your browser put the package you have just downloaded.
  This is unfortunate as I can't tell you exactly what to do next. But find
  the package (often it's on the desktop) and then move it into
  C:\cygwin\home\&lt;username&gt;. (where &lt;username&gt; is whatever name
  cygwin gave you)
  <UL>
    <LI>
      Then open a cygwin window (by clicking on the cygwin icon)
    <LI>
      With luck you will now be in the directory containing the package you downloaded.
    <LI>
      Now type (do not type the "$"):
      <BLOCKQUOTE>
	<PRE><FONT COLOR="Gray">$ </FONT>bunzip2 fontforge_cygwin-*.tar.bz2
<FONT COLOR="Gray">$ </FONT>tar xf fontforge_cygwin-*.tar
<FONT COLOR="Gray">$ </FONT>cd fontforge
<FONT COLOR="Gray">$ </FONT>./doinstall
</PRE>
      </BLOCKQUOTE>
    <LI>
      Then each time you want to run fontforge, start X11
      <UL>
	<LI>
	  On recent cygwin systems you may start X by invoking:
	  <BLOCKQUOTE>
	    <PRE>C:\cygwin\usr\X11R6\bin\startxwin.bat
</PRE>
	  </BLOCKQUOTE>
	<LI>
	  Or:
	  <BLOCKQUOTE>
	    <PRE>startx
</PRE>
	  </BLOCKQUOTE>
	<LI>
	  While on older systems try:
	  <BLOCKQUOTE>
	    <PRE><FONT COLOR="Gray">$ </FONT>xinit
</PRE>
	  </BLOCKQUOTE>
	<LI>
	  This should bring up X in a large window that covers the screen and within
	  that should be a subwindow, an xterm, running bash.
	<LI>
	  From the xterm you first start a window manager
	  <BLOCKQUOTE>
	    <PRE><FONT COLOR="Gray">$ </FONT>twm &amp;
</PRE>
	  </BLOCKQUOTE>
	<LI>
	  And then you should be able start FontForge.
	  <BLOCKQUOTE>
	    <PRE><FONT COLOR="Gray">$ </FONT>fontforge -new
</PRE>
	  </BLOCKQUOTE>
      </UL>
      <H3>
	<A NAME="Notes">Notes</A>
      </H3>
      <P>
      <FONT COLOR="Red"><STRONG>Caveat: </STRONG></FONT>cygwin has a different
      approach to the file system than Windows. A filename like
      <CODE>C:\windows\fonts\arial.ttf </CODE>will be called
      <CODE>/cygdrive/c/windows/fonts/arial.ttf </CODE>under cygwin (backslashes
      are replaced by slashes, and the initial drive "<CODE>C:</CODE>" becomes
      "<CODE>/cygdrive/c</CODE>".
      <P>
      Similarly a cygwin filename
      "<CODE>/home/&lt;username&gt;/myfont.ttf</CODE>" becomes
      "<CODE>C:\cygwin\home\&lt;username&gt;\myfont.ttf</CODE>"
      <P>
      <STRONG><FONT COLOR="Red">Caveat</FONT>:</STRONG> Do <STRONG>NOT</STRONG>
      try to install a font by using fontforge to write the font directly to the
      Windows\Fonts directory. This doesn't work. Windows needs to do some magic
      when installing a font that it can't do if fontforge writes directly there.
      Instead have fontforge create the font somewhere else and then use Windows'
      own drag &amp; drop technique to move the font from there into Windows\Fonts.
      <P>
      <STRONG><FONT COLOR="Red">Caveat</FONT>:</STRONG> I've been told that on
      Win 98 you need to have "Microsoft Network Login" installed to run X. I never
      found this to be true myself, but if you have problems it might be something
      to try.
      <P>
	<HR>
      <UL>
	<LI>
	  <A HREF="source-build.html#MS">Building and installing from source</A>
	<LI>
	  <A HREF="source-build.html#Dependencies">Dependencies (external libraries/helper
	  programs)</A>
	<LI>
	  <A HREF="source-build.html#Documentation">Installing documentation</A>
	<LI>
	  <A HREF="running.html#cygwin">Running FontForge</A>
	<LI>
	  <A HREF="running.html#cygwin-troubles">Troubleshooting</A>
      </UL>
      <P>
  </UL>
</DIV>
</BODY></HTML>
